<template>
  <div id="app">
    <router-view/>
  </div>
</template>

<script>
// rem适配
window.onload = function() {
  // 响应宽高大小
  document.documentElement.style.fontSize =
    (16 * document.documentElement.clientWidth) / 375 + "px";
    String.prototype.trim=function(){
　　    return this.replace(/(^\s*)|(\s*$)/g, "");
　　 }
if (!HTMLCanvasElement.prototype.toBlob) {
   Object.defineProperty(HTMLCanvasElement.prototype, 'toBlob', {
    value: function (callback, type, quality) {

      var binStr = atob( this.toDataURL(type, quality).split(',')[1] ),
          len = binStr.length,
          arr = new Uint8Array(len);

      for (var i=0; i<len; i++ ) {
       arr[i] = binStr.charCodeAt(i);
      }

      callback( new Blob( [arr], {type: type || 'image/png'} ) );
    }
   });
  }
};
import wx from 'weixin-js-sdk'
import {

} from '@/http'

export default {
  data() {
    return {
      apiInfo: {},
      wxSdk: {}
    }
  },
  created() {
    this.wxInit()
  },
  methods: {
    async asyncData() {
      var str = location.href;
      // console.log('urlStr',str)
      // var reg = /sign\/(.*)#/i
      // var res = str.search(reg)
      var start = str.search("sign/");
      var end = str.search("#");
      var start2 = parseInt(start + 5);
      var res2 = str.substring(start2, end);

      const url = window.location.href.split('#')[0]
      // const req2 = getApiInfo()
      const res = await (url, res2)
      console.log(res)
      if (res.data && res.errcode === 0) {
        this.wxSdk = res.data
      } else {
        if (res.msg) {
          console.error(res.msg)
        }
        // this.$Message.error(res.msg)
      }
    },
    async wxInit() {
      await this.asyncData()
      const _this = this
      wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
        appId: this.wxSdk.appId, // 必填，企业号的唯一标识，此处填写企业号corpid
        timestamp: this.wxSdk.timestamp, // 必填，生成签名的时间戳
        nonceStr: this.wxSdk.nonceStr, // 必填，生成签名的随机串
        signature: this.wxSdk.signature, // 必填，签名，见附录1
        jsApiList: [
          'chooseImage',
          'uploadImage',
          'onMenuShareTimeline',
          'hideOptionMenu',
          'showMenuItems',
          'onMenuShareAppMessage'
        ] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
      })

      wx.ready(function () {
        // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中。
        // 分享到朋友圈
        // const url = window.location.href.split('#')[0]
        wx.onMenuShareTimeline({
          title: '最美禾粉',
          link: 'http://wxtest.suoluomei.com/hpl/index.php?s=/Weixin/beautiful/index',
          imgUrl: '',
          success: function () {
            _this.$Message.success('分享成功')
          }
        })
        // 转发分享
        wx.onMenuShareAppMessage({
          title: '最美禾粉',
          desc: '_this.apiInfo.share.desc',
          link: 'http://wxtest.suoluomei.com/hpl/index.php?s=/Weixin/beautiful/index',
          imgUrl: '',
          type: '',
          dataUrl: '',
          success: function () {
            _this.$Message.success('分享成功')
          }
        })

        wx.error(function (res) {
          // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。
          console.log(res)
        })
      })
    }
  }
}
</script>
<style>
body {
  padding: 0;
  margin: 0;
}
#app {
  font-family: "Avenir", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #333;
  padding: 0;
  margin: 0;
}
h1,
h2,
h3,
h4,
h5,
p {
  padding: 0;
  margin: 0;
}
</style>
